package com.qywx.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.Entity;
import java.util.Date;

/**
 * @ClassName UserEntity
 * @Description: TODO
 * @Author wmj
 * @Date 2020/3/5
 * @Version V1.0
 **/
@Data
@Entity
@TableName("user")
public class UserEntity {
    //用户id
    @Excel(name = "账号(必填唯一)", orderNum = "1", width = 20)
    @TableId
    private String userid;
    //用户名
    @Excel(name = "姓名(必填)", orderNum = "0", width = 20)
    private String name;
    //别名
    @Excel(name = "别名", orderNum = "2", width = 20)
    private String alias;
    //手机号
    @Excel(name = "手机(必填唯一)", orderNum = "6", width = 20)
    private String mobile;
    //部门id列表1, 2
    //@Excel(name = "部门id", orderNum = "10", width = 30)
    private String department;
    //排序[10,40],默认0
    private String order1;
    //职务
    @Excel(name = "职务", orderNum = "3", width = 20)
    private String position;
    //性别 1:男 2:女
    @Excel(name = "性别", orderNum = "5", width = 20)
    private String gender;
    //email
    @Excel(name = "邮箱", orderNum = "8", width = 20)
    private String email;
    //座机
    @Excel(name = "座机", orderNum = "7", width = 20)
    private String telephone;
    //个数必须和department一致，表示在所在的部门内是否为上级。1表示为上级，0表示非上级
    private String isLeaderInDept;
    //成员头像的mediaid
    private String avatarMediaid;
    //是否启用 1表示启用成员，0表示禁用成员
    private String enable;
    //自定义字段
    private String extattr;
    //是否邀请该成员使用企业微信（将通过微信服务通知或短信或邮件下发邀请，每天自动下发一次，最多持续3个工作日），默认值为true
    private String to_invite;
    //成员对外属性
    private String externalProfile;
    //对外职务，如果设置了该值，则以此作为对外展示的职务，否则以position来展示。长度12个汉字内
    private String externalPosition;
    //地址。长度最大128个字符
    @Excel(name = "地址", orderNum = "9", width = 20)
    private String address;
    //用户工号
    @Excel(name = "工号", orderNum = "20", width = 20)
    private String userNumber;
    //所在科室
    private String departmentOffice;
    //所在科室代码
    private String officeNumber;
    //岗位类别
    private String category;
    //是否同步到微信 0:未同步 1:已同步 2：待更新
    private String isSynchronize;
    //部门名称
    @Excel(name = "部门(必填已有部门)", orderNum = "4", width = 20)
    private String depName;
    //图片id
    private int photo;
    //是否关注微信
    private int status;
    //状态: 0=无效，1=有效
    private int stat;
    //标签信息
    private String tagName;
    //人员类型
    private String usertype;
    //失效时间
    @JsonFormat(pattern="yyyy-MM-dd")
    private Date failureTime;
    //同步时间
    @JsonFormat(pattern="yyyy-MM-dd")
    private Date syncTime;
    //创建时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date creatTime;
    @Excel(name = "属性一", orderNum = "10", width = 20)
    private String attribute1;
    @Excel(name = "属性二", orderNum = "11", width = 20)
    private String attribute2;
    @Excel(name = "属性三", orderNum = "12", width = 20)
    private String attribute3;
    @Excel(name = "属性四", orderNum = "13", width = 20)
    private String attribute4;
    @Excel(name = "属性五", orderNum = "14", width = 20)
    private String attribute5;
    @Excel(name = "属性六", orderNum = "15", width = 20)
    private String attribute6;
    @Excel(name = "属性七", orderNum = "16", width = 20)
    private String attribute7;
    @Excel(name = "属性八", orderNum = "17", width = 20)
    private String attribute8;
    @Excel(name = "属性九", orderNum = "18", width = 20)
    private String attribute9;
    @Excel(name = "属性十", orderNum = "19", width = 20)
    private String attribute10;

}
